$(function () {
	vm.getLayout();
});

var vm = new Vue({
	el:'#rrapp',
	data:{
        showGraph:{
			data: [{
                name: '商业布局信息库',
                x: 150,
                y: 200
            },{name: '结果数据',
                x: 250,
                y: 200
            },{
                name: '网点数据',
                x: 50,
                y: 180
            },{
                name: '布局规划',
                x: 50,
                y: 200
            },{
                name: '位置信息',
                x: 50,
                y: 220
            }],
            links: [{
                source: 0,
                target: 1
            },{
                source: 3,
                target: 0
            },{
                source: 4,
                target: 0
            },{
                source: 2,
                target: 0
            }],
		},
		list: []
	},
	methods: {
		getLayout: function(){
			var type='1';
			if (url('type')) {
				type=url('type');
			} 
			$.get(baseURL + "bdbusiness/layout/"+type, function(r){
				vm.list = r.list;

				showMap();
            });
		},
	}
});


var mapName = [ '宽城区', '德惠市', '绿园区', '二道区', '长春市朝阳区', '南关区', '双阳区', '九台区','农安县', '榆树市' ];
var map = new BMap.Map("allmap", {
    minZoom : 9,  
    maxZoom : 18,
	enableMapClick : false,
	mapType : BMAP_NORMAL_MAP
}); // 创建Map实例

var districtLoading = 0;

function showMap() {
	
	map.setMapStyle({
		styleJson : [{ // 不显示点信息
			"featureType" : "poi",
			"elementType" : "all",
			"stylers" : {
				"color" : "#ffffff",
				"visibility" : "off"
			}
		} ]
	});
	map.centerAndZoom(new BMap.Point(125.3, 43.9), 10); // 初始化地图,设置中心点坐标和地图级别
	// 添加地图类型控件
	map.addControl(new BMap.MapTypeControl({
		mapTypes : [ BMAP_NORMAL_MAP, BMAP_HYBRID_MAP ]
	}));
	map.setCurrentCity("长春"); // 设置地图显示的城市
	map.enableScrollWheelZoom(true); // 开启鼠标滚轮缩放

	for (var i = 0; i < mapName.length; i++) {
		getMap(mapName[i])
	}

	map.addControl(new BMap.ScaleControl({anchor: BMAP_ANCHOR_TOP_LEFT})); 
	map.addControl(new BMap.NavigationControl()); 

	for(var i=0;i<vm.list.length;i++){
		var bean = vm.list[i];
		var info = '';
		info += '<p title="'+bean.name+'">名称：'+bean.name+'<p>';
		info += '<p title="'+bean.address+'">地址：'+bean.address+'<p>';
		if (bean.type) {
			info += '<p title="'+bean.type+'">类型：'+bean.type+'<p>';
		}
		if (bean.plan) {
			info += '<p title="'+bean.plan+'">计划规划：'+bean.plan+'<p>';
		}
		if (bean.length) {
			info += '<p title="'+bean.length+'">长度：'+bean.length+'<p>';
		}
		addHandler(bean.x_data,bean.y_data,info);
	}
}
function addHandler(x,y,text){
	var marker = new BMap.Marker(new BMap.Point(x,y));  // 创建标注
	map.addOverlay(marker);               // 将标注添加到地图中
	addClickHandler(text,marker);
}
function addClickHandler(content,marker){
	marker.addEventListener("click",function(e){
		openInfo(content,e)}
	);
}
function openInfo(content,e){
	var p = e.target;
	var point = new BMap.Point(p.getPosition().lng, p.getPosition().lat);
	var infoWindow = new BMap.InfoWindow(content);  // 创建信息窗口对象 
	map.openInfoWindow(infoWindow,point); //开启信息窗口
}
// 编写自定义函数,创建标注
function addMarker(x,y){
	var point = new BMap.Point(x,y);
	overlayMarker = new BMap.Marker(point);  // 创建标注
	map.addOverlay(overlayMarker);               // 将标注添加到地图中
//	overlayMarker.setAnimation(BMAP_ANIMATION_BOUNCE); //跳动的动画
}
function getMap(name) {
	var bdary = new BMap.Boundary();
	bdary.get(name, function(rs) { // 获取行政区域
		// map.clearOverlays(); //清除地图覆盖物
		var count = rs.boundaries.length; // 行政区域的点有多少个
		if (count === 0) {
			alert('未能获取当前输入行政区域');
			return;
		}
		var pointArray = [];
		for (var i = 0; i < count; i++) {
			var ply = new BMap.Polygon(rs.boundaries[i], {
				strokeWeight : 2,
				strokeColor : "#3388ff",
				fillOpacity : 0.1,
			// fillColor: "#c6dafd"
			}); // 建立多边形覆盖物
			map.addOverlay(ply); // 添加覆盖物
			pointArray = pointArray.concat(ply.getPath());
		}
		// map.setViewport(pointArray); //调整视野
		// 添加文本标注
		if (name == '长春市朝阳区') {
			name = '朝阳区'
		}
		var centerlabel = new BMap.Label(name, {
			offset : new BMap.Size(0, 0)
		});
		centerlabel.setStyle({
			width : '40px',
			height : '15px',
			textAlign : 'center',
			borderColor : '#3eb7a6',
			borderRadius : '3px',
			paddingLeft : '2px',
			paddingRight : '2px',
			lineHeight : "16px",
			color : "#fff",
			fontSize : "12px",
			backgroundColor : "#3388ff",
			border : "1",
			opacity : "0.6"
		});
	})
}